package com.mybatis.framework.utils;

/**
 * 描述
 *
 * @author humdeef
 * @since 07.
 */
public final class StringUtil {
  private StringUtil() {}

  /**
   * 判断字符是否是null或者是空字符串
   *
   * @param str 源字符串
   * @return 结果
   */
  public static boolean isEmptyOrBlank(String str) {
    if (str == null) {
      return true;
    }
    if (str.length() == 0 || str.equals("")) {
      return true;
    }
    return false;
  }

  /**
   * 第一个字母小写
   *
   * @param name 源字符串
   * @return 结果
   */
  public static String lowerFirstLetter(String name) {
    if (name == null || name.length() == 0) {
      return name;
    }
    if (name.length() > 1 && Character.isUpperCase(name.charAt(1))
        && Character.isUpperCase(name.charAt(0))) {
      return name;
    }
    char chars[] = name.toCharArray();
    chars[0] = Character.toLowerCase(chars[0]);
    return new String(chars);
  }

  /**
   * 
   * @param clazz 类名
   * @return
   */
//  public static String className(Class clazz) {
//    if (clazz == null) {
//      return "";
//    }
//    clazz.getSimpleName();
//
//    return new String(chars);
//  }

  /**
   * 替换分号为.
   *
   * @param str
   * @return
   */
  public static String replaceSemicolon(String str) {
    return str == null ? str : str.replaceAll("\\\\", ".");
  }

  /**
   * 将两个斜杠变成一个
   */
  public static String replaceTwoSlash(String str) {
    return str == null ? str : str.replaceAll("//", "/");
  }


  //
  // @Test
  // public void test() {
  // System.out.println(replaceSemicolon("a/b/c"));
  // }
  //
  // @Test
  // public void test2() {
  // System.out.println(replaceTwoSlash("//a//b//v/"));
  // }
}
